草庐IT

arm64 orr

全部标签

c++ - long long VS 2013 Release Win 64 错误结果

当我在VS2013/Win64/Release中尝试这段代码时,我得到了错误的结果:它打印出11。在Visual2013Win32/Debug/Release&Win64/Debug中,结果是正确的。VisualStudio项目是使用默认参数创建的。#includeintmain(intargc,char*argv[]){longlonginc[2]={0,1};longlongdinc[2]={0,0};dinc[0]=inc[1]-inc[0];dinc[1]=inc[0]-inc[1];//expected-1==>display1for(inti=0;i如何解释这个结果?

c++ - 成员结构位域元素的初始化列表初始化导致 IAR ARM 中的错误

我在IAR中有以下类结构:classA{public:A(){}virtual~A(){};virtualvoidload(){};};classC{public:C(){//Cdoesotherstuff,notrelevant}};classD;classB:publicA{public:B():invert(false){};virtual~B(){};voidload(){//Irrelevantstuffdonehere}private:Cmember_c;std::vectorvector_of_d;struct{boolvar_1:1;boolvar_2:1;boolva

c++ - 当出现 icq 桌面错误时如何编辑 makefile (make : *** [all] Error 2) Ubuntu 18. 04 64 bit

我尝试编译icqdesktop在ubuntu18.0464位上,我尝试了:mkdirbuild&&cdbuild&&cmake..-G"UnixMakefiles"-DCMAKE_BUILD_TYPE=Release-DLINUX_ARCH=64&&make但是我有这个错误:[19%]Builttargetcore[19%]Builttargetcorelib[20%]LinkingCXXexecutable../../bin/Release64/icq.../usr/bin/x86_64-linux-gnu-ld:../../external/linux/x64/libevent-2

c++ - g++, R_X86_64_32S : what is it?

我使用C++和OpenGL编写了一个3D引擎。我通常在我的archlinux64位上从事这个项目,但在这些假期我在32位系统上做。我使用subversion,自从我的64位系统上最后一次svn启动以来,我遇到了错误:http://pastebin.be/23730核心、包装器和接口(interface)是使用-fPIC选项编译的,我不明白所以...谢谢:) 最佳答案 这似乎是一个重定位错误,您的某些文件未使用-fPIC进行编译。更改您的标志以包含-fPIC,然后在再次构建之前执行makeclean。

c++ - openssl 加密库 - base64 转换

我正在使用opensslBIO对象将二进制字符串转换为base64字符串。代码如下:voidToBase64(std::string&s_in){BIO*b_s=BIO_new(BIO_s_mem());BIO*b64_f=BIO_new(BIO_f_base64());b_s=BIO_push(b64_f,b_s);std::cout长度为64或72。但是输出始终为65,这是不正确的,它应该比这大得多。该文档不是世界上最好的,AFAIKbio_s_mem对象应该动态增长。我究竟做错了什么?我可能最好找到一个不提供流支持但支持base64转换的自包含C++类。流媒体支持不适合我的应用程

c++ - 嵌入式 C++ (ARM9) 单元测试

我来自Java和JUnit的世界。我演示了Hudson以及我在那里使用JUnit取得的所有成果。我想在嵌入式设备上对C++代码执行相同的操作,但找不到从哪里开始。该项目使用iccarm.exe(IAR编译器)编译,现在使用romutil.exe将输出转换为图像文件,以闪存到ARM9板。我尝试按照本教程进行操作:http://netbeans.org/kb/docs/cnd/c-unit-test.html但我在尝试弄清楚如何将其移植到我的案例中时遇到了问题。我可以在设备外部对C++代码运行单元测试吗?(即与Hudson一起收集报告等)我可以将输出转换为exe吗?(看起来像Netbean

c++ - 如何使用 open64 编译器构建 boost 库?

我想试试AMD的open64编译器,但为此我首先需要使用此编译器构建一些boost库(当前版本1.46_1)。不幸的是,open64不在boost.build系统提供的工具集中,参见例如here或更详细here.现在,我如何获得open64构建的boost?到目前为止,这是我尝试过/发现的:在子目录tools/build/v2/tools有一堆.jam文件似乎定义了可以通过using使用的工具集指令,例如usinggcc;.这些看起来很难看,我真的不知道如何为open64(或openCC,这是实际命令)编写一个。由于openCC的接口(interface)显然与gcc的接口(inter

c++ - 在 OSX 上从 x86 读取共享内存到 x64,反之亦然

如果我从64位应用程序创建SM并在32位应用程序上打开它,它会失败。//for64bitshared_memory_object(create_only,"test",read_write);//for32bitshared_memory_object(open_only,"test",read_write);64位应用创建的文件路径如下:/private/tmp/boost_interprocess/AD21A54E000000000000000000000000/test32位应用程序搜索的文件在路径中/private/tmp/boost_interprocess/AD21A54E

c++ - size_t 和 __w64、time_t 和 __int64 是如何工作的?

我不是C或C++的老手。我不知道time_t是如何定义和设计的。几个帖子,例如:Whatisultimatelyatime_ttypedefto?Whatissize_tinC?Differencebetweensize_tandstd::size_t但是这些帖子只说明什么是time_t或size_t。它没有明确说明time_t或size_t是如何以及在何处定义和声明的。我正在使用WIN8VS2012ExpressC++。我搜索了库,发现size_t是在crtdefs.h中定义的,而不是cstddef。为什么需要size_t、time_t这样的类型?我们可以让sizeof只返回unsi

c++ - 如何使 Boost dylibs 在 os x 上通用(i386 和 x86_64)?

我正在尝试将Boost库编译成通用二进制文件(即包含i386和x86_64架构构建的“胖”文件)。破坏互联网和SO我组装了以下说明。下载boost(例如来自http://www.boost.org/users/download/)在下载的文件夹中,输入./bootstrap.sh(或者,在我的例子中./bootstrap.sh--with-libraries=thread,因为我只需要线程库)键入./b2installcxxflags="-archi386-archx86"这些步骤将Boost线程库安装到/usr/local/lib/(它的标准位置)。生成的静态库是一个通用二进制文件。